System, method, and computer program product for characterizing media associated with data storage channels

ABSTRACT

A system in one embodiment includes multiple analog inputs for receiving readback signals, an analog to digital converter coupled to each of the analog inputs for converting the readback signals to digital signals, a buffer coupled to outputs of the analog to digital converters for at least temporarily storing the digital signals, and a digital processing section also coupled to outputs of the analog to digital converters for processing the digital signals for reconstructing data therefrom. A method in one embodiment includes receiving multiple channels of analog readback signals from a magnetic head, converting the analog signals in each channel to digital signals, buffering the digital signals, and outputting the buffered digital signals. A method in another embodiment includes receiving a readback waveform from a magnetic storage device, reducing a frequency offset of the readback waveform, and generating a synchronized, oversampled waveform from the readback waveform.

BACKGROUND

The present invention relates to data storage systems, and moreparticularly, this invention relates to characterizing media for datastorage channels.

In magnetic storage systems, data is read from and written onto magneticrecording media utilizing magnetic transducers commonly. Data is writtenon the magnetic recording media by moving a magnetic recordingtransducer to a position over the media where the data is to be stored.The magnetic recording transducer then generates a magnetic field, whichencodes the data into the magnetic media. Data is read from the media bysimilarly positioning the magnetic read transducer and then sensing themagnetic field of the magnetic media. Read and write operations may beindependently synchronized with the movement of the media to ensure thatthe data can be read from and written to the desired location on themedia.

An important and continuing goal in the data storage industry is that ofincreasing the density of data stored on a medium. For tape storagesystems, that goal has led to increasing the track density on recordingtape, and decreasing the thickness of the magnetic tape medium. However,the development of small footprint, higher performance tape drivesystems has created various problems in the design of a tape headassembly for use in such systems.

SUMMARY

A system for a magnetic storage device according to one embodimentincludes multiple analog inputs for receiving readback signals, ananalog to digital converter coupled to each of the analog inputs forconverting the readback signals to digital signals, a buffer coupled tooutputs of the analog to digital converters for at least temporarilystoring the digital signals, and a digital processing section alsocoupled to outputs of the analog to digital converters for processingthe digital signals for reconstructing data therefrom.

A method according to one embodiment includes receiving multiplechannels of analog readback signals from a magnetic head, converting theanalog signals in each channel to digital signals, buffering the digitalsignals, and outputting the buffered digital signals.

A method according to another embodiment includes receiving a readbackwaveform from a magnetic storage device, reducing a frequency offset ofthe readback waveform, and generating a synchronized, oversampledwaveform from the readback waveform.

A computer program product for outputting data in one embodimentincludes a computer usable medium having computer usable program codeembodied therewith. The computer usable program code includes computerusable program code configured to reduce a frequency offset of areadback waveform received from a magnetic storage device, and computerusable program code configured to generate a synchronized, oversampledwaveform from the readback waveform.

Any of these embodiments may be implemented in a magnetic data storagesystem such as a tape drive system, which may include a magnetic head, adrive mechanism for passing a magnetic medium (e.g., recording tape)over the magnetic head, and a controller electrically coupled to themagnetic head.

Other aspects and embodiments of the present invention will becomeapparent from the following detailed description, which, when taken inconjunction with the drawings, illustrate by way of example theprinciples of the invention.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a schematic diagram of a simplified tape drive systemaccording to one embodiment.

FIG. 2 shows a system for a magnetic storage device for characterizingmedia associated with data storage channels, in accordance with oneembodiment.

FIG. 3 shows a method for generating a synchronized, oversampledwaveform from a readback waveform, in accordance with one embodiment.

FIG. 4 shows a system capable of performing a signal processingtechnique used to obtain oversampled, synchronous channel data, inaccordance with one embodiment.

FIG. 5 shows a system for noise prediction analysis, in accordance withone embodiment.

FIG. 6 shows a system for non-data dependent noise-whitening, inaccordance with one embodiment.

FIG. 7 shows a system for data dependent noise-whitening, in accordancewith one embodiment.

DETAILED DESCRIPTION

The following description is made for the purpose of illustrating thegeneral principles of the present invention and is not meant to limitthe inventive concepts claimed herein. Further, particular featuresdescribed herein can be used in combination with other describedfeatures in each of the various possible combinations and permutations.

Unless otherwise specifically defined herein, all terms are to be giventheir broadest possible interpretation including meanings implied fromthe specification as well as meanings understood by those skilled in theart and/or as defined in dictionaries, treatises, etc.

It must also be noted that, as used in the specification and theappended claims, the singular forms “a,” “an” and “the” include pluralreferents unless otherwise specified.

The following description discloses several preferred embodiments oftape-based storage systems, as well as operation and/or component partsthereof.

In one general embodiment, a system for a magnetic storage deviceincludes multiple analog inputs for receiving a readback signal, ananalog to digital converter coupled to each of the analog inputs forconverting the readback signals to digital signals, a buffer coupled tooutputs of the analog to digital converters for at least temporarilystoring the digital signals, and a digital processing section alsocoupled to outputs of the analog to digital converters for processingthe digital signals for reconstructing data therefrom.

In another general embodiment, a method for outputting buffered digitalsignals is provided in operation, multiple channels of analog readbacksignals are received from a magnetic head. Additionally, the analogsignals in each channel are converted to digital signals. Furthermore,the digital signals are buffered. Still yet, the buffered digitalsignals are output.

In another general embodiment, a method for generating a synchronized,oversampled waveform from a readback waveform is provided. In operation,a readback waveform is received from a magnetic storage device.Additionally, a frequency offset of the readback waveform is reduced.Furthermore, a synchronized, oversampled waveform is generated from thereadback waveform.

In another general embodiment, a computer program product for outputtingdata is provided, the computer program product comprising a computerusable medium having computer usable program code embodied therewith.Furthermore, the computer usable program code includes computer usableprogram code configured to reduce a frequency offset of a readbackwaveform received from a magnetic storage device and computer usableprogram code configured to generate a synchronized, oversampled waveformfrom the readback waveform.

As will be appreciated by one skilled in the art, the present inventionmay be embodied as a system, method or computer program product.Accordingly, the present invention may take the form of an entirelyhardware embodiment, an entirely software embodiment (includingfirmware, resident software, micro-code, etc.) or an embodimentcombining software and hardware aspects that may all generally bereferred to herein as a “circuit,” “module” or “system.” Furthermore,the present invention may take the form of a computer program productembodied in any tangible medium of expression having computer-usableprogram code embodied in the medium.

Any combination of one or more computer usable or computer readablemedium(s) may be utilized. The computer-usable or computer-readablemedium may be, for example but not limited to, an electronic, magnetic,optical, electromagnetic, infrared, or semiconductor system, apparatus,device, or propagation medium. More specific examples (a non-exhaustivelist) of the computer-readable medium would include the following: anelectrical connection having one or more wires, a portable computerdiskette, a hard disk, a random access memory (RAM), a read-only memory(ROM), an erasable programmable read-only memory (EPROM or Flashmemory), an optical fiber, a portable compact disc read-only memory(CD-ROM), an optical storage device, a transmission media such as thosesupporting the Internet or an intranet, or a magnetic storage device.Note that the computer-usable or computer-readable medium could even bepaper or another suitable medium upon which the program is printed, asthe program can be electronically captured, via, for instance, opticalscanning of the paper or other medium, then compiled, interpreted, orotherwise processed in a suitable manner, if necessary, and then storedin a computer memory. In the context of this document, a computer-usableor computer-readable medium may be any medium that can contain, store,communicate, propagate, or transport the program for use by or inconnection with the instruction execution system, apparatus, or device.The computer-usable medium may include a propagated data signal with thecomputer-usable program code embodied therewith, either in baseband oras part of a carrier wave. The computer usable program code may betransmitted using any appropriate medium, including but not limited towireless, wireline, optical fiber cable, RF, etc.

Computer program code for carrying out operations of the presentinvention may be written in any combination of one or more programminglanguages, including an object oriented programming language such asJava, Smalltalk, C++ or the like and conventional procedural programminglanguages, such as the “C” programming language or similar programminglanguages. The program code may execute entirely on the user's computer,partly on the user's computer, as a stand-alone software package, partlyon the user's computer and partly on a remote computer or entirely onthe remote computer or server. In the latter scenario, the remotecomputer may be connected to the user's computer through any type ofnetwork, including a local area network (LAN) or a wide area network(WAN), or the connection may be made to an external computer (forexample, through the Internet using an Internet Service Provider).

The present invention is described below with reference to flowchartillustrations and/or block diagrams of methods, apparatus (systems) andcomputer program products according to embodiments of the invention. Itwill be understood that each block of the flowchart illustrations and/orblock diagrams, and combinations of blocks in the flowchartillustrations and/or block diagrams, can be implemented by computerprogram instructions. These computer program instructions may beprovided to a processor of a general purpose computer, special purposecomputer, or other programmable data processing apparatus to produce amachine, such that the instructions, which execute via the processor ofthe computer or other programmable data processing apparatus, createmeans for implementing the functions/acts specified in the flowchartand/or block diagram block or blocks.

These computer program instructions may also be stored in acomputer-readable medium that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablemedium produce an article of manufacture including instruction meanswhich implement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer implemented process such that theinstructions which execute on the computer or other programmableapparatus provide processes for implementing the functions/actsspecified in the flowchart and/or block diagram block or blocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

FIG. 1 illustrates a simplified tape drive 100 of a tape-based datastorage system, which may be employed in the context of the presentinvention. While one specific implementation of a tape drive is shown inFIG. 1, it should be noted that the embodiments described herein may beimplemented in the context of any type of tape drive system.

As shown, a tape supply cartridge 120 and a take-up reel 121 areprovided to support a tape 122. One or more of the reels may form partof a removable cassette and are not necessarily part of the system 100.The tape drive, such as that illustrated in FIG. 1, may further includedrive motor(s) to drive the tape supply cartridge 120 and the take-upreel 121 to move the tape 122 over a tape head 126 of any type.

Guides 125 guide the tape 122 across the tape head 126. Such tape head126 is in turn coupled to a controller assembly 128 via a cable 130. Thecontroller 128, e.g., processor, typically controls head functions suchas servo following, writing, reading, etc. and may be in communicationwith a computer-readable medium 134 such as a memory. The cable 130 mayinclude read/write circuits to transmit data to the head 126 to berecorded on the tape 122 and to receive data read by the head 126 fromthe tape 122. An actuator 132 controls position of the head 126 relativeto the tape 122.

An interface may also be provided for communication between the tapedrive and a host (integral or external) to send and receive the data andfor controlling the operation of the tape drive and communicating thestatus of the tape drive to the host, all as will be understood by thoseof skill in the art. Moreover, the tape drive 100 may form part of atape library system comprising a plurality of drives.

The optimized design of read channels for storage systems such astape-drive systems requires an accurate characterization of the physicalrecording channel. The characterization may include the determination ofquantities such as the channel frequency response, the properties of thenoise processes, the amount of available signal-to-noise ratio, theamount and nature of nonlinear distortion present in the readbacksignals, etc. The characterization often involves collecting samples ofthe readback signal at the input of the read channel and processingthese samples.

In some cases, it is expensive and cumbersome to achieve faithfulchannel characterization. For example, one approach that may be usedincludes sampling the readback signal utilizing a digital scope. In thiscase, the sampling rates needed must be significantly higher than thebit rate in order to achieve sufficient accuracy in the characterizationprocess.

These sampling rates may exceed the capability of the instrumentationemployed. Even if these high sampling rates can practically be achieved,the capture of long readback waveforms at very high sampling ratesrequires very large memory buffers. This calls for expensive labinstruments. Furthermore, data collection may be cumbersome because ofthe very high number of captures required for a satisfactory channelanalysis.

In addition, in multichannel systems such as tape systems, a number ofchannels may operate in parallel (e.g. 16, 32, etc.) resulting in acomplex implementation and a high capture time. In any case, the signalsamples stored in the memory of the digital scope memory may eventuallybe off-loaded to a host computer for further processing.

The processing that takes place in the host computer to analyze theproperties of the recording channel may be carried out accurately onlyif the captured waveforms are well synchronized in time. In many cases,however, the sampling process with the employed laboratory instrument isnot phase-locked to the readback analog signal, resulting in samplingfrequency offsets that render the processing for channelcharacterization problematic. For this reason, these approaches arelimited to processing some short portions of the captured waveforms overwhich frequency modulation effects can be neglected. However, theresults of the characterization that can be achieved in that manner arelimited. It is therefore desirable to implement a more efficienttechnique for characterizing media associated with data storagechannels.

FIG. 2 shows a system 200 for a magnetic storage device forcharacterizing media associated with data storage channels, inaccordance with one embodiment. As an option, the present system 200 maybe implemented in the context of the details of FIG. 1. Of course,however, the system 200 may be implemented in any desired environment.

As shown, the system 200 includes multiple analog inputs 202 forreceiving readback signals. The readback signals may include signalsfrom one or more channels of a magnetic storage device. Additionally, inone embodiment, processing may be performed on the signals prior toreaching the analog inputs 202.

In another embodiment, the processing may be performed on the signalsafter reaching the analog inputs 202. In still another embodiment, theprocessing may be performed on the signals before and after reaching theanalog inputs 202. In these cases, the processing may include any typeof processing, such as gain adjustment, filtering, etc.

As shown further, at least one analog to digital converter 204 is alsoprovided. The analog to digital converters 204 are coupled to each ofthe analog inputs 202 for converting the analog readback signals todigital signals. The analog to digital converters 204 need not bephase-locked to the timing of the analog input 202 signals but may beclocked by a free running clock or free running clocks. Furthermore, atleast one buffer 206 is coupled to outputs of the analog to digitalconverters 204 for at least temporarily storing the digital signals. Asan option, the buffer 206 may store the digital signals directly outputby the analog to digital converters 204.

The buffer 206 may include any device capable of storing data. Forexample, in various embodiments, the buffer 206 may include randomaccess memory (RAM) such as synchronous dynamic random access memory(SDRAM), single data rate (SDR) SDRAM, double data rate (DDR) SDRAM,etc.

The system 200 also includes at least one digital processing section208. The digital processing section 208 is also coupled to outputs ofthe analog to digital converters 204 for processing the digital signalsfor reconstructing data therefrom. It should be noted that, in variousembodiments, the system 200 may be embodied on a single chip or multiplechips.

Furthermore, the system 200 of FIG. 2 may be implemented in conjunctionwith a magnetic storage device such as that shown in FIG. 1. Forexample, in one embodiment, the system 200 may further include amagnetic head 126 (FIG. 1), a drive mechanism for passing a magneticmedium over the magnetic head 125 (FIG. 1), and a controller 128(FIG. 1) electrically coupled to the magnetic head.

In operation, multiple channels of analog readback signals may bereceived from the magnetic head. The analog signals in each channel maythen be converted to digital signals. Additionally, the digital signalsmay be buffered and the buffered digital signals may be output. As anoption, the digital signals may be processed for reconstructing datatherefrom. Furthermore, these steps may be performed using the system200 implemented on a single chip or multiple chips.

Thus, a buffer (e.g. an SDRAM buffer, etc.) may be integrated within atape drive, thereby facilitating the capability to capture readbackwaveforms in an inexpensive and efficient manner. The buffer enables theability to collect large amounts of tape data across all the channels,without the use of external devices and interface issues, etc.

Furthermore, the characteristics of the magnetic recording channel maybe determined by employing the signal samples captured in the buffer.This data may be transferred from the tape drive to a host computer viaan appropriate interface 207 (e.g. a fiber channel port, etc.) where achannel analysis technique may be implemented. In this way, operation onnonsynchronous signal samples taken with a low upsampling factor ispossible. Additionally, the sampling ratio may be set to one such thatno upsampling is performed.

Accordingly, rather than relying on laboratory instruments for waveformcapture, the buffer integrated within the tape drive may be utilized.The buffer may be used as a device to store the signal samples at theinput of the read channel. In this way, besides avoiding the need forany external signal capture equipment, the same signal samples as thoseinput to the digital processing section 208 are capable of being storedfor subsequent analysis.

Additionally, since the signal characterization does not require a highamount of oversampling, it is sufficient to store the samples obtainedat the read channel analog to digital conversion rate. This makes italso possible to store long waveforms of the readback samples.

Still yet, the signal samples of all the parallel channels may besimultaneously stored in the buffer, thereby avoiding the tediouscapture and time alignment issues of multichannel data with external labequipment. Moreover, because every drive may include an integratedbuffer-based waveform storage, it is possible to use the in-drive bufferto capture samples of the tape readback signals for problematic drivesencountered in the field. This enables an efficient off-line diagnosticand channel characterization capability.

It should be noted that, in one embodiment, when no data is beingcollected for analysis purposes, the buffer may be made available toassist various other tape drive functions. For example, the datacollected in the buffer may be transferred from the drive to a hostcomputer via an appropriate interface 207 (e.g. a fiber channel port,etc.).

FIG. 3 shows a method 300 for generating a synchronized, oversampledwaveform from a readback waveform, in accordance with one embodiment. Asan option, the present method 300 may be implemented in the context ofthe functionality and architecture of FIGS. 1-2. Of course, however, themethod 300 may be carried out in any desired environment. For example,the method may be performed by a host in communication with a magneticstorage device. In another approach, the method may be performed on amagnetic storage device, with results thereof sent to a host for furtheranalysis and/or processing.

As shown, a readback waveform is received, e.g., from a magnetic storagedevice. See operation 302. In one embodiment, the readback waveform maycorrespond to pseudo-random binary sequence data. As an option, thereadback waveform may be stored in a buffer on the magnetic storagedevice.

Additionally, a frequency offset of the readback waveform is reduced.See operation 304. In one embodiment, the frequency offset of thereadback waveform may be reduced using a feedback loop. In this case,the feedback loop may include a phase locked loop.

Furthermore, a synchronized, oversampled waveform is generated from thereadback waveform. See operation 306.

In one embodiment, a noise from the synchronized, oversampled waveformmay be extracted and a whitening technique may be performed on thenoise.

As an option, a signal-to-noise ratio may be estimated using thissynchronized, oversampled waveform. As another option, the synchronized,oversampled waveform may be utilized for analyzing data dependentcharacteristics of channel noise and/or analyzing nonlinear distortioneffects. As yet another option, the synchronized, oversampled waveformmay further be utilized for identifying a system transition and dibitresponse.

Part of the signal processing technique may include both mitigating thefrequency offset in the collected waveforms and obtaining waveforms at asampling rate higher than the rate at which the waveform received inoperation 302 was initially sampled. In one embodiment, this may beachieved by a software receiver or software read channel.

FIG. 4 shows a system 400 capable of performing a signal processingtechnique used to obtain oversampled, synchronous channel data, inaccordance with one embodiment. As an option, the present system 400 maybe implemented in the context of the details of FIGS. 1-3. Of course,however, the system 400 may be implemented in any desired environment.

In operation, an interpolation and timing recovery module 402 mayreceive a readback signal channel from a buffer at a signal spacing ofT. As shown, the signal spacing T may also be modified by a ratio q/r,where q and r are integers, with q≦r. The interpolation and timingrecovery module 402 outputs a signal that is oversampled by a factor ofn, where n equals the number of samples per T. In this case, n may beset equal to any integer value that is considered adequate (e.g. n=2, 4,5, 8, 10, etc.).

The interpolation and timing recovery module 402 output may function asan input for a fractionally spaced equalizer 404. The output of thefractionally spaced equalizer 404 is obtained with a signal spacing of Tand may then be gain adjusted by a gain adjustment module 406, and thegain adjusted output may serve as an input to an equalizer adjustmentmodule 408 and a timing control module 410.

Thus, the system 400 may be utilized to process at least one readbackwaveform captured by the buffer. The system 400 may then operate as asynchronous read-channel architecture in order to resample andinterpolate the waveform samples collected in a drive. Aphase-locked-loop that is being realized by the timing control functionmodule 410 that controls the interpolation and timing recovery module402 may be utilized to ensure that a remaining frequency offset in theoutput signal is negligibly small.

As a result of this first step, the obtained output signal at a rate n/Tis a synchronized and oversampled version of the readback signal. Insome cases, an interpolation function that is part of the interpolationand timing recovery module 402 may introduce a negligible amount ofdistortion in the signal characteristic.

Once the synchronized and oversampled version of the readback signal isobtained, the signal-to-noise ratio (SNR) of the readback waveform maybe estimated (i.e. the channel SNR) using the synchronized andoversampled signal. Employing this signal for channel SNR estimationensures that any timing jitter present in the readback signal is removedand does not contribute to the noise power during SNR computations.

In some cases, channel SNR may be estimated when the readback waveformcorresponds to pseudo-random binary sequence (PRBS) data. In this case,the readback waveform may be considered over P consecutive periods, eachperiod containing nM samples, where M denotes the period of the employedPRBS in units of T.

For example, the signal of the p-th period may be denoted by x_(p)(k),where k=0, 1, . . . , nM−1. The readback signal is first averaged ateach time k over these P periods, yielding x_(av)(k), as shown inEquation 1.

$\begin{matrix}{{{x_{av}(k)} = {\frac{1}{P}{\sum\limits_{p = 0}^{P - 1}{x_{p}(k)}}}},{k = 0},1,\ldots\mspace{14mu},{{nM} - 1}} & {{Equation}\mspace{14mu} 1}\end{matrix}$

Once the sequence x_(av)(k) is obtained, it is subtracted from eachsignal sequence x_(p)(k), yielding P sets of noise sequences w_(p)(k),as illustrated by Equation 2.w _(p)(k)=x _(p)(k)−x _(av)(k), p=0, 1, . . . P−1; k=0, 1, . . . ,nM−1  Equation 2

At any given time instant k, the noise variance is obtained, as shown inEquation 3.

$\begin{matrix}{{{\sigma_{w}^{2}(k)} = {\frac{1}{P}{\sum\limits_{p = 1}^{P - 1}\left\lbrack {{w_{p}(k)} - {\overset{\_}{w}(k)}} \right\rbrack^{2}}}},{k = 0},1,\ldots\mspace{14mu},{{nM} - 1}} & {{Equation}\mspace{14mu} 3}\end{matrix}$

The average noise sequence is obtained as shown in Equation 4.

$\begin{matrix}{{{\overset{\_}{w}(k)} = {\frac{1}{P}{\sum\limits_{p = 0}^{P - 1}{w_{p}(k)}}}},{k = 0},1,\ldots\mspace{14mu},{{nM} - 1}} & {{Equation}\mspace{14mu} 4}\end{matrix}$

It should be noted that the sequence σ_(w) ²(k) reflects thenonstationarity (i.e. the data dependency) of the noise process.Finally, assuming a zero-mean signal and noise process, the channel SNRmay be obtained, as shown in Equation 5.

$\begin{matrix}{{SNR} = \frac{\sigma_{x}^{2}}{\sigma_{w}^{2}}} & {{Equation}\mspace{14mu} 5}\end{matrix}$

In this case, σ_(x) ² denotes the power of the signal and σ_(w) ² is thepower of the noise, as shown in Equation 6.

$\begin{matrix}{\sigma_{w}^{2} = {\frac{1}{nM}{\sum\limits_{k = 0}^{{nM} - 1}{\sigma_{w}^{2}(k)}}}} & {{Equation}\mspace{14mu} 6}\end{matrix}$

In addition to obtaining the channel SNR, the sequence of synchronizedoversampled signals may be used to analyze the data dependentcharacteristics of the channel noise process. Furthermore, the sequenceof synchronized oversampled signals may be used for other purposes aswell, such as the identification of the system transition and dibitresponse, the analysis of nonlinear distortion effects, etc.

FIG. 5 shows a system 500 for noise prediction analysis, in accordancewith one embodiment. As an option, the present system 500 may beimplemented in the context of the details of FIGS. 1-4. Of course,however, the system 500 may be implemented in any desired environment.

As shown, T-spaced synchronous readback samples are input into a partialresponse class 4 (PR4) equalizer 502. The output of the equalizer 502 isthe signal plus the noise. Data written to tape is also filtered throughan ideal filter 504 (e.g. an ideal PR4 characteristic filter, etc.) andthe resulting signal, which is an ideal signal, is subtracted from theoutput of the PR4 equalizer 502 resulting in an error signal thatrepresents the noise. This noise is then input into a finite impulseresponse (FIR) noise whitening filter 506. The PR4 characteristic isused to illustrate the noise analysis process in a specific case and canbe replaced by any other characteristic that is deemed appropriatewithin the context of noise prediction.

The noise characterization may be used in a detector design such thatperformance may be maximized for high linear densities. Performancegains of noise-predictive maximum likelihood (NPML) or data-dependentNPML (DD-NPML) detection may depend on achievable prediction gains.Thus, the equalized readback signal may be whitened using the FIRwhitening filter 506 and a prediction gain may be computed by dividingthe noise power by the whitened-noise power.

It should be noted that a whitening filter may be obtained adaptively(e.g. utilizing a least mean squares (LMS) algorithm, etc.) in datadependent (DD) or non-data dependent mode. FIG. 6 shows a system 600 fornon-data dependent noise-whitening, in accordance with one embodiment.As an option, the present system 600 may be implemented in the contextof the details of FIGS. 1-5. Of course, however, the system 600 may beimplemented in any desired environment.

As shown, the system 600 may include one or more delay elements 602 andone or more multipliers 604. In operation, noise is input into thesystem 600 and whitened noise is output. In this case, the noise isinput into a series of the delay elements 602, and each output of thedelay elements 602 is input into a corresponding multiplier 604.

Each of the multipliers 604 multiply the output of the delay elements602 by a coefficient and the resulting values are summed utilizing anadder 606. This sum serves as a noise prediction, which is thensubtracted from the input noise. As a result, a whitened noise isoutput.

FIG. 7 shows a system 700 for data dependent noise-whitening, inaccordance with one embodiment. As an option, the present system 700 maybe implemented in the context of the details of FIGS. 1-6. Of course,however, the system 700 may be implemented in any desired environment.

As shown, the system 700 may include a plurality of delay elements 702and a plurality of multipliers 704. In operation, noise is input intothe system 700 and whitened noise is output. In this case, the noise isinput into a series of the delay elements 702, and each output of thedelay elements 702 is input into a corresponding multiplier 704.

Each of the multipliers 704 multiply the output of the delay elements702 by a coefficient and the resulting values are summed utilizing anadder 706. This sum serves as a noise prediction, which is thensubtracted from the input noise. As a result, a whitened noise isoutput.

It should be noted that, in this example, the data is dependent on acurrent bit, a_(k), and a previous bit a_(k-1). At time k, if thewritten bit is known, then an appropriate filter may be utilized. Forexample, if a_(k) and a_(k-1) are equal to “0” and “0,” a top branchfilter corresponding to the bit “00” may be utilized. In this way, thewhitening is dependent on the data. This may be implemented for everybit combination of a_(k) and a_(k-1).

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, and notlimitation. Thus, the breadth and scope of a preferred embodiment shouldnot be limited by any of the above-described exemplary embodiments, butshould be defined only in accordance with the following claims and theirequivalents.

1. A system for a magnetic storage device, the system comprising:multiple analog inputs for receiving readback signals; an analog todigital converter coupled to each of the analog inputs for convertingthe readback signals to digital signals; a buffer coupled to outputs ofthe analog to digital converters for at least temporarily storing thedigital signals; and a digital processing section also coupled tooutputs of the analog to digital converters in parallel with the buffer,the digital processing section being for processing the digital signalsfor reconstructing data therefrom.
 2. A system as recited in claim 1,wherein the system is embodied on a single chip.
 3. A system as recitedin claim 1, wherein the buffer comprises random access memory.
 4. Asystem as recited in claim 1, wherein the buffer stores the digitalsignals directly output by the analog to digital converters.
 5. A systemas recited in claim 1, further comprising a magnetic head, a drivemechanism for passing a magnetic medium over the magnetic head, and acontroller electrically coupled to the magnetic head.
 6. A system asrecited in claim 1, further comprising an interface coupled to thebuffer for transferring data from the buffer to a host system.
 7. Asystem as recited in claim 6, wherein the reconstructed data is alsotransferred to the host computer.
 8. A method, comprising: receivingmultiple channels of analog readback signals from a magnetic head;converting the analog signals in each channel to digital signals;buffering the digital signals; outputting the buffered digital signalsto an interface for transferring data corresponding to the buffereddigital signals to a host system; and processing the digital signals forreconstructing data therefrom, wherein the digital signals are processedfor reconstructing data therefrom using a digital processing section,wherein the digital processing section receives the digital signals inparallel with a buffer performing the buffering.
 9. A method as recitedin claim 8, wherein the digital signals being buffered are receiveddirectly from outputs of analog to digital converters.
 10. A method asrecited in claim 8, wherein the steps are performed by a single chip.11. A method as recited in claim 8, further comprising also transferringthe reconstructed data to the host system.
 12. A method, comprising:receiving a readback waveform of readback signals from a magneticstorage device via multiple analog inputs adapted for receiving thereadback signals; converting the readback signals to digital signalsusing an analog to digital converter coupled to each of the analoginputs; at least temporarily storing the digital signals using a buffercoupled to outputs of the analog to digital converters; processing thedigital signals for reconstructing data therefrom using a digitalprocessing section also coupled to outputs of the analog to digitalconverters in parallel with the buffer; reducing a frequency offset ofthe readback waveform; and generating a synchronized, oversampledwaveform from the readback waveform.
 13. A method as recited in claim12, wherein the frequency offset of the readback waveform is reducedusing a feedback loop.
 14. A method as recited in claim 13, wherein thefeedback loop is a phase locked loop.
 15. A method as recited in claim12, further comprising estimating a channel signal-to-noise ratio usingthe synchronized, oversampled waveform.
 16. A method as recited in claim12, wherein the readback waveform is stored in a buffer on the magneticstorage device.
 17. A computer program product for outputting data, thecomputer program product comprising: a non-transitory computer usablemedium having computer usable program code embodied therewith, thecomputer usable program code comprising: computer usable program codeconfigured to receive multiple channels of analog readback signals froma magnetic head; computer usable program code configured to reduce afrequency offset of a readback waveform of the readback signals receivedfrom a magnetic storage device; computer usable program code configuredto generate a synchronized, oversampled waveform from the readbackwaveform; computer usable program code configured to convert the analogsignals in each channel to digital signals; computer usable program codeconfigured to control buffering of the digital signals; computer usableprogram code configured to cause output the buffered digital signals toan interface for transferring data corresponding to the buffered digitalsignals to a host system; and computer usable program code configured toprocess the digital signals for reconstructing data therefrom, whereinthe digital signals are processed for reconstructing data therefromusing a digital processing section, wherein the digital processingsection receives the digital signals in parallel with a bufferperforming the buffering.
 18. A method, comprising: receiving multiplechannels of analog readback signals from a magnetic head; converting theanalog signals in each channel to digital signals; buffering the digitalsignals; and outputting the buffered digital signals to an interface fortransferring data corresponding to the buffered digital signals to ahost system; and processing the digital signals for reconstructing datatherefrom, wherein the same digital signal samples as those received bya digital processing section performing the processing are stored in thebuffer for subsequent analysis in the host system.